home *** CD-ROM | disk | FTP | other *** search
-
-
-
- Bugs Alive
-
- Bugs Alive is an evolution simulation program. It has the challenge of a
- game while at the same time it teaches about the processes that drive
- natural selection. It challenges the user of the program to set up an
- environment and then to explain how and why things change. (Program
- requires EGA color graphics.)
-
- The program consists of plants, bugs, and predators.
-
- PLANTS
-
- The plants are almost round structures that are green in the summer and
- turn gray in the winter1. They can only grow in certain areas of the
- screen. The number of fertile areas for plant growth can be controlled by
- using the Density statement in a control file. The Pattern statement can
- also be used to create a specific pattern of fertile areas on the screen.
- It will override the density statement. The Growth statement controls the
- rate of plant growth in the summer and death in the winter.
-
- BUGS
-
- The bugs are little colored squares that swarm around the screen eating the
- plants, growing, and reproducing. There are three sizes and six colors that
- indicate the energy of each bug. The larger the size the higher the energy
- level. When a bug has acquired sufficient energy from eating green plants
- and if it is summer the bug will split (asexual reproduction). At this
- point of reproduction several factors can change; i.e.
-
- o Visual Range Farthest distance can see plants
- o Energy Use Efficiency of plant use for energy
- o Death Run Point Energy level for start of Death Run
- o Hibernate Presence or absence of Hibernate factor
-
- These factors will either increase, decrease or remain unchanged. The
- change or mutation rate at this point is very high, several orders of
- magnitude higher than a real situation. However, who wants to run a program
- for several months or years in order to notice change.
-
- Bugs can only see food in the direction in which they are moving and are
- limited to a fixed visual range. This visual range can change at the time
- of reproduction. The value listed in the report is the average for the
- population.
-
- When a bug's energy level drops below a certain point, the bug will pick a
- random direction and move in that direction until it either finds green
- plants or dies. This is the Death Run. The average point at which the Death
- Run for the population starts is given in the report file.
-
- The Bug population starts out with about five percent of the bugs having a
- hibernation factor. This factor also has a five percent mutation rate at
- reproduction. If a Bug has this factor and their energy efficiency level is
- below a given point2 then they hibernate during the winter to save energy.
- A hibernating Bug will appear to freeze on the screen.
-
- The environment wraps around on the screen; left to right and top to
- bottom. The bugs do not notice this and are able to pass and see across
- these transitions.
-
-
-
-
-
-
-
-
- The Number command in the command file can be used to establish an initial
- number of bugs this can be anywhere from 1 to 500. However, the greater the
- number of Bugs and predators the slower the program will run. When the last
- Bug has died the program will terminate.3 If a large number of bugs are
- produced they will begin to feel population stress and die a natural death
- at a faster rate.
-
- Predators
-
- Predators appear on the screen as small circles. While they have only one
- size they do change color as their energy levels change. Predators remain
- stationary unless they are chasing a Bug. This is because they use a much
- higher level of energy when moving.
-
- Predators also have several factors that can change when reproduction
- occurs (also asexual). These factors are;
-
- o Visual Range Distance can see Bugs
- o Speed Speed of movement
- o Energy Use Efficiency use Bugs for energy
-
-
- The visual range for the predators is the base visual range at which they
- can see the smallest Bug. Larger bugs can be seen at slightly greater
- distances depending on size. It is only the base visual range that can
- change during reproduction.
-
- The speed which a Predator moves after a Bug is also subject to change at
- the time of reproduction. The slowest that a Predator will move is the same
- as the Bugs. However, with selection and change they can move up to five
- times faster.
-
- Energy use for Predators is almost the same as for Bugs except that
- Predators eat Bugs. This means that energy use indicates how much energy a
- Predator can get from a bug, above the basic level.
-
- Unless a Zero Predator option is chosen in the Predator statement in the
- control file a new predator will periodically wander into the environment.
- The default rate is once in ten years, however, this can be changed with
- the Addpredator statement in the control file.
-
- While Predators can travel across the boundaries at the edges of the screen
- because they can not see across these boundaries they rarely cross them.
-
- Control File
-
- There is only one command line option when starting the program. The name
- of a control file. This file when present contains a series of statements
- that can adjust some of the variable aspects of the Bug's environment. Each
- command in the control file is case insensitive i.e. the letters can be any
- mixture of upper and lower case. There is also no defined order to their
- appearance or requirement that they appear. A control file could contain as
- few as a single statement.
-
- Below is a control file and description of each statement. The descriptions
- should not be included within the control file.
-
- number 30 Number of starting bugs (1-500);
- growth 10 Rate of plant growth (1-100);
- plant 150 Number of initial plants (1-1000);
-
-
-
-
-
-
- density 25 Number of fertile land locations (1-50);
- summer 3 Length of summer, 100 pixel moves (1-100);
- predators 3 Starting predator number (0-50);
- addpredator 15 Add predator on average every # years (1+);
- linked negative Link change in visual range and energy use
- (positive, negative)
- pattern 1 OOOOXXXXOOOO Create pattern of plant growth by row
- pattern 2 OOOXXOOXXOOO number. X's are locations for plants. This
- pattern 3 OOXXOOOOXXOO statement overrides density;
- pattern 4 OXXOOXXOOXXO
- pattern 5 XXOOXXXXOOXX
- pattern 6 XXOOOOOOOOXX
-
- Number 30
-
- The number statement can be used to establish the initial number of
- bugs when the program starts. The statement above would start the
- program with thirty bugs. If this statement is not included or a
- control file is not used then a default number of bugs somewhere
- between 5 and 20 will be produced. The number of starting bugs that
- this statement will accept must fall somewhere between 1 and 500.
- Exceeding this range will result in five Bugs as a starting value.
-
- Growth 10
-
- The growth statement is used to control the rate of plant growth in
- the summer and plant death in the winter. It uses an ordinal number
- falling between 1 and 100. The higher this number the greater the rate
- of plant growth and death.
-
- Plant 150
-
- Plant is a statement that controls the initial number of plants on the
- screen when the first summer starts. It uses an ordinal number falling
- between 1 and 1000. The higher this number the more plants present at
- summer.
-
- Density 25
-
- The density statement controls the number of locations of fertile land
- where plants can grow. These locations will be randomly distributed
- throughout the screen. The range of values can fall between one and
- fifty. If a pattern statement is used this statement need not be
- included as it will be overridden.
-
- Summer 3
-
- Summer is a statement that controls the length of summer and winter.
- The seasons are measured in one hundred bug moves. A three as given
- above would indicate that summer will last three hundred bug moves.
- Winter is always one third the length of summer. The range of possible
- choices is one to one hundred. While the seasons are progressing a bar
- will grow4 in the bottom line of the screen so that you may judge the
- relative time within the season.
-
- Predators 3
-
- The predators statement can be used to establish an initial number of
- predators. If it is not included or a control file is not used then
- one predator for each ten bugs will be used at the start of the
-
-
-
-
-
-
- program. The statement given above will cause three predators to be
- present when the game starts. If the value in the predators statement
- is set to zero then there will not be any predators at the start of
- the program and none will periodically wander into the environment.
- However, Predators can still be introduced through the special keys
- listed below. The range of initial predators can fall between zero and
- fifty.
-
- Addpredator 15
-
- This statement can be used to determine how many years, on average,
- will divide the times when a predator periodically wanders into the
- environment. It should be remembered that this is a random process
- therefore it is possible for a predator to appear on two successive
- years when the interval is set to something like every fifteen years
- as it is above. The range of values can be any whole number greater
- than zero.
-
- Linked negative
-
- The linked statement will allow the user to explore the effects of
- linking two factors at the time of change (reproduction). These
- factors are visual range and energy use. The two options for this
- statement are positive and negative. The result of linkage means that
- at the time of reproduction when change can take place, the nature of
- the change in one factor will be related to the change in the other.
- When they are positively linked an increase in visual range will be
- associated with an increase in energy usage or a decrease in one would
- also mean a decrease in the other. For negative linkage if one factor
- increases the other will decrease. If this statement is not used or a
- control file is not used then these two factors will not be linked.
- They can then change independently of each other.
-
- Pattern 1 OOOOXXXXOOOO
-
- The pattern statement is used to establish a pattern of positions of
- fertile land for plant growth. The second value in the statement is
- the row number starting with the top of the screen. There are a total
- of six possible rows. The third field is a string twelve positions in
- length. Each position represents one of twelve columns across the
- screen. Where the X's are located, that column and row will have
- fertile land. The other positions in the string can be filled with any
- character. The pattern statements need not be in row order, however,
- it is easier to visualize if they are. When this statement is used the
- density statement will be overridden.
-
- Special Keys
-
- There are two groups of special keys. The first is a single key that allows
- you to exit the program prior to the death of the final bug (handy when a
- equilibrium state is established). This is done by pressing the 'Q' key.
-
- The others are the ten number keys on the key pad or the top of the
- keyboard. When using the keypad they must be used as number keys not
- direction keys. Pressing one of these keys when the program is in operation
- will introduce a predator at a random location within the corresponding
- area of the screen; i.e. 7 is upper left, 5 is center, and 3 lower right.
- The zero key will place a predator in some random location on the entire
- screen.
-
-
-
-
-
-
-
-
- Report File
-
- After the program ends you will find a report file 'BALIVE.REP' on your
- disk. This is a summary of births, deaths and the status of the changeable
- factors for bugs and predators for each year. This is the data that you may
- use to test various scenarios that you establish through the control file.
- The next time the program is run this file will be overwritten by a new
- file so change its name if you want to save it.
-
-
-
- Please send a shareware contribution
- of $10 to
-
- Acinom Software
- 7301 Lanham Lane
- Edina, MN 55439
-
-
- 1 There are only two seasons; Summer and Winter.
- 2 I will let you try and figure out this point.
- 3 The other way to terminate the program is to press the Q key.
- 4 Summer's bar is green and winter's bar is gray.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ----------------end-of-author's-documentation---------------
-
- Software Library Information:
-
- This disk copy provided as a service of
-
- Public (software) Library
-
- We are not the authors of this program, nor are we associated
- with the author in any way other than as a distributor of the
- program in accordance with the author's terms of distribution.
-
- Please direct shareware payments and specific questions about
- this program to the author of the program, whose name appears
- elsewhere in this documentation. If you have trouble getting
- in touch with the author, we will do whatever we can to help
- you with your questions. All programs have been tested and do
- run. To report problems, please use the form that is in the
- file PROBLEM.DOC on many of our disks or in other written for-
- mat with screen printouts, if possible. PsL cannot debug pro-
- programs over the telephone, though we can answer questions.
-
- Disks in the PsL are updated monthly, so if you did not get
- this disk directly from the PsL, you should be aware that the
- files in this set may no longer be the current versions. Also,
- if you got this disk from another vendor and are having prob-
- lems, be aware that some files may have become corrupted or
- lost by that vendor. Get a current, working disk from PsL.
-
- For a copy of the latest monthly software library newsletter
- and a list of the 2,000+ disks in the library, call or write
-
- Public (software) Library
- P.O.Box 35705 - F
- Houston, TX 77235-5705
-
- 1-800-2424-PSL
- MC/Visa/AmEx
-
- Outside of U.S. or in Texas
- or for general information,
- Call 1-713-524-6394
-
- PsL also has an outstanding
- catalog for the Macintosh.
-